export function dialog-open:
    & { parent: Optional[Widget], title: String, cwd: os::Path, filter: String }
        => Async[Maybe[os::Path]]
    native 'qt-dialog-open';

export function dialog-open-multiple:
    & { parent: Optional[Widget], title: String, cwd: os::Path, filter: String }
        => Async[List[os::Path]]
    native 'qt-dialog-open-multiple';

export function dialog-open-directory:
    & { parent: Optional[Widget], title: String, cwd: os::Path }
        => Async[Maybe[os::Path]]
    native 'qt-dialog-open-directory';

export function dialog-save:
    & { parent: Optional[Widget], title: String, cwd: os::Path, filter: String }
        => Async[Maybe[os::Path]]
    native 'qt-dialog-save';
